/**
* Oxide
*
* Copyright (c) 2011 Dinosaur Kick Pty Ltd, All rights reserved.
*
* This source code is made available under the "Modified BSD" licensing arrangement.
* See license.txt for details.
*/
// ----------------------------------------------------------------------------
#include <functional>
#include "../token.hpp"
// ----------------------------------------------------------------------------
#ifndef O2_PARSE_TOKEN_EMPTY_PREDICATE_INC
#define O2_PARSE_TOKEN_EMPTY_PREDICATE_INC
namespace o2 {
namespace parse {
namespace detail {	
// ----------------------------------------------------------------------------

template <typename StringT>
struct token_empty_predicate
	: public std::unary_function<basic_token<StringT>, int>
{
	int operator() (const basic_token<StringT>& value) const
	{
		return value.identity == TOK_LINE_COMMENT
			|| value.identity == TOK_BLOCK_COMMENT;
	}
	
	StringT doc_block;
};

// ----------------------------------------------------------------------------
} // namespace detail
} // namespace parse
} // namespace o2
#endif // O2_PARSE_TOKEN_EMPTY_PREDICATE_INC
// ----------------------------------------------------------------------------
